/**
 *
 */
package com.hybris.msig.paymentgateway.facade;

import com.hybris.msig.paymentgateway.data.PaymentResponseData;
import com.hybris.msig.paymentgateway.dto.MsigPayRequestDto;
import com.hybris.msig.paymentgateway.dto.MsigPaymentCheckStatusDto;


/**
 * @author i313922
 *
 */
public interface MsigCommonPaymentFacade
{
	/**
	 * Payment transaction status check
	 *
	 * @param msigPaymentCheckStatusDto
	 * @return PaymentResponseData
	 */
	PaymentResponseData checkPaymentStatus(MsigPaymentCheckStatusDto msigPaymentCheckStatusDto);

	/**
	 * Initialize payment transaction
	 *
	 * @param msigPayRequestDto
	 */
	void initPaymentTransaction(MsigPayRequestDto msigPayRequestDto);

	void updatePaymentTransaction(PaymentResponseData paymentResponseData);

}
